Robots may be programmed to perform a variety of tasks and often must follow one or more trajectories in performing programmed tasks. For example, to retrieve an object and place the object in a container, one or more operational components of a robot may follow a first trajectory to reach a pick up location for the object, then after picking up the object may follow a second trajectory to reach a location for placing the object in the container.
Various techniques may be employed for determining a trajectory to be followed by a robot in performance of a task. For example, some robots may be configured to learn trajectories based on the user physically manipulating the robot. Also, for example, some robots may be configured to automatically determine an appropriate trajectory for performing a task based on sensed environmental conditions and/or other factors. For instance, some robots may determine a trajectory to an object based on detecting a position of the object, then using a trajectory planner to determine an acceptable trajectory to reach the position of the object. However, robots configured to automatically determine trajectories may suffer from one or more drawbacks.